#pragma once

#include <string>
#include <iostream>
#include <vector>
#include <boost/shared_ptr.hpp>
#include <boost/pointer_cast.hpp>
#include <boost/make_shared.hpp>

using std::string;
using std::vector;	using std::cout;
using std::endl;	using std::cin;

using boost::shared_ptr;
using boost::dynamic_pointer_cast;
using boost::make_shared;